Schema to define stream (tcp/udp/ssh/serial/telnet) polls for a device
No Additional PropertiesMust contain a minimum of 1 items
Schema to define a finite duration
No Additional PropertiesMust contain a minimum of 1 items
Must be at least 1 characters long
whether to run as admin
If set to true then all commands with terminators must complete from terminators instead of from read timeouts
Parse data across packets. Useful for async data flows.
No Additional PropertiesWill use the configured output encoding of the poll.
Will use the configured output encoding of the poll.
Treat the search as a regex
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/RegExp
All items must be unique
No Additional ItemsRequests are generally plain StringCommands, but constructing binary inputs is also supported. Output encoding defaults to UTF-8, but can be overridden for working with binary.
No Additional PropertiesConfigurations for transforming data coming from devices
JSONPath expression that this should apply to
JSON object field key to place output in
Optional, JSONPath to array if not operating on it directly
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/join
No Additional Propertieshttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice
No Additional PropertiesSum the numeric values in an array
No Additional PropertiesMust be at least 1 characters long
Flatten an array of arrays
No Additional PropertiesCombine an array of objects into one object
No Additional PropertiesChoose to overwrite values for duplicate keys or form a list of values
List of values becomes a set
Filter an array
Look at a certain property of array entries
Reduce an array. The transform will be run on each item in the array, with the input to the transform being an object with fields acc and current. The acc field will be populated with the xform init parameter for the first element. If the output of the transform is an object with an acc field, that will be used as the newly-accumulated value, otherwise the whole output will be in the acc field on the next item.
Configurations for transforming data coming from devices
Same definition as preSendXformConvert an array of numbers to a string. Defaults to utf-8 encoding.
No Additional PropertiesReverse an arrays items.
No Additional PropertiesConvert a hex-encoded string to an array of numbers
No Additional PropertiesGenerates checksum from input string and returns isValid boolean or checksum-inserted string
Name of the algorithm (i.e. miteq, twoCharSum, mclCRC16)
Path to string property containing message to checksum
Path to property for output of operation
Take an array of objects and a field to combine on, and output an array of objects with that field being unique among them, and other fields combined into arrays.
If true, non-objects or objects without the key field will be kept in the array, otherwise they'll be discarded
Takes two arrays of objects and outputs one array with all the combinations of values of both. Transformation(s) can be provided to modify the output.
Configurations for transforming data coming from devices
Same definition as preSendXformMake a copy of a field with a new name or multiple new names
Field name to copy
Copy a field from the root (ignoring operateOn) instead of using fieldName
Remove the old field, if using fieldName mode
Evaluate a JSONPath expression with jsonpath-plus and return the result
No Additional PropertiesKeep or discard the given fields
Insert fields into an object, or values into an array
Takes two arrays of objects, and outputs one array of combined objects, joined by a key field.
JSONPath to first array. The key field in this array should have unique values for each object.
JSONPath to second array. The non-key fields of objects in this array will be collected into arrays on the matching record from the first array.
Flag to keep the non key fields as objects. If not defined will turn non key fields into arrays. If using this flag and there are multiple values for a field based on the join, the last one will be chosen
Take an object and return an array where all the keys are extracted from the input object
Take an object and return an array of arrays where the inner array is [key, value]
Take an array of objects and build one object where keys and values are extracted from array rows (or the reverse)
Should be passed a base64 string
Value must be greater or equal to 0
JSONPath to operand
Merge two objects by JSONPath, with fields in the second overwriting fields in the first
No Additional PropertiesMove data
The current data (from operateOn) is replaced within an object
--> {[toSubField]: currData}
'toSubField': ['a', 'b'] --> {'a': {'b': oldData}}
Must contain a minimum of 1 items
Must be at least 1 characters long
Take a value and move it elsewhere. Tries to intelligently handle objects/arrays
No Additional PropertiesJSONPath to move
JSONPath to where value will be placed, or root if unspecified
If target is array and this is unspecified, will append
If target is an object and this is specified, add this field with the source value
Takes the array of packets from a multiple-datasource field and transforms it into an object with the given field names and their payloads, optionally transformed
Zero-based index of which datasource this is
Name in the final object which will contain the payload for this DS
Must be at least 1 characters long
Configurations for transforming data coming from devices
Same definition as preSendXformConvert a signed integer to an unsigned integer or vice versa
No Additional PropertiesConvert a little endian integer to a bit endian integer or vice versa
No Additional Propertieshttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/parseInt
No Additional Propertieshttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/parseFloat
No Additional Propertieshttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toString
No Additional Propertieshttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toFixed
No Additional Propertieshttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toExponential
No Additional Propertieshttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toPrecision
No Additional PropertiesParse a date time specification from an SNMP octet string value
Takes a regex with named groups and outputs the match(es) as object(s)
true to output an array of all matches, otherwise just a single object
Lookup table, incoming values will be replaced with their matching entry. If regex flag is true, keys should be valid regex patterns
JSONPath expression that resolves to an object to which the same rules apply. This expression is applied to the original value (before operateOn is taken into account).
If true, replacement keys must be valid regexes, and replacement values can be strings with $1 - $99 placeholders for match groups
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/RegExp
Same definition as regexFlagsRuns a rule with json-rules-engine and outputs based on whether the rule evaluates to true or false
A subset of json-rules-engine rules to be used in xforms
JSONPath
Must provide one of value or valuePath
No Additional PropertiesJSONPath
Any kind of output
No Additional PropertiesOutput comes from the data
No Additional PropertiesJSONPath
Treat two arrays as sets and perform set operations on them.
JSONPath to first array. First/second only makes a difference for difference op.
JSONPath to second array. First/second only makes a difference for difference op.
Name of the shared xforms file containing the transform
Name of the transform in the file
A shared xform may define variables it can take in, if it does then values need to be provided to replace them with
No Additional PropertiesAll properties whose name matches the following regular expression must respect the following conditions
Property name regular expression:.+
Apply transform(s) to an snmpGet payload, looked up by OID
No Additional PropertiesOID keys
No Additional PropertiesAll properties whose name matches the following regular expression must respect the following conditions
Property name regular expression:^(\d+[.])*\d+$
key in the resulting object for this transformed value
Configurations for transforming data coming from devices
Same definition as preSendXformApply transform(s) to columns in each row of an snmpGetTable payload
No Additional PropertiesAll properties whose name matches the following regular expression must respect the following conditions
Property name regular expression:^(\d+[.])*\d+$
key in the resulting object for this transformed value
Configurations for transforming data coming from devices
Same definition as preSendXformSet to true to output an array of objects keyed by index
Transform with ST: https://selecttransform.github.io/site/
No Additional Propertieshttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/substring
No Additional PropertiesJSONPath to operand
JSONPath to operand
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/slice
No Additional PropertiesJSONPath to operand
JSONPath to operand
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/substr
No Additional PropertiesJSONPath to operand
JSONPath to operand
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/Trim
No Additional Propertieshttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/trimEnd
No Additional Propertieshttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/trimStart
No Additional Propertieshttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/split
No Additional PropertiesValue must be greater or equal to 0
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/padStart
No Additional PropertiesJSONPath to operand
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/padEnd
No Additional PropertiesJSONPath to operand
Convert string to array of code points
No Additional PropertiesJoin different strings together
No Additional PropertiesJSONPath to string
Static string to add
Create an object based on regex searches through text
Keys are regexes to search for
All properties whose name matches the following regular expression must respect the following conditions
Property name regular expression:.*
Configurations for transforming data coming from devices
Same definition as preSendXformTransform with a JS Script
No Additional PropertiesRuns a basic JS Script and outputs the returned result. A const input holds the result of the previous transforms.
Must match regular expression:^((?!(\b(eval|Function|import|export|function|fs|file|File|os|close|open|addEventListener|removeEventListener|console|location|write|body|localStorage|sessionStorage|document|window|alert))[; .({]).)*$
Requests are generally plain StringCommands, but constructing binary inputs is also supported. Output encoding defaults to UTF-8, but can be overridden for working with binary.
No Additional PropertiesDefines 'commands' to be used in various places (sent during polls or commands on SSH, TCP, Serial, UDP). Plain strings can be commands, and they'll automatically get a newline appended. Alternatively, it can be an object with a custom or empty line ending.
Must be at least 1 characters long
Search for a terminator. Can set a high read timeout if this is set, because presumably the poll will terminate by finding output instead of the connection going idle. Be aware if more output comes after the terminator, that output will most likely end up in later communications.
No Additional PropertiesWill use the configured output encoding of the poll.
Treat the search as a regex
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/RegExp
Same definition as regexFlagsIf set to false, the output of this command won't be in the final result
If set to false, when the noDataTimeout is reached, no error will be generated. Note: currently doesn't apply to TCP
Run multiple commands and collect all the output
No Additional PropertiesOutput of these polls are a dictionary of command results, this is the key in that dictionary
Send data after connecting and drain responses
Must contain a minimum of 1 items
Send data after connecting and drain responses
Must contain a minimum of 1 items
Regex to remove a prompt from received data, for instance '
\s*$'
Must be at least 1 characters long